1. Field of the Invention
The present invention relates to an apparatus for and a method of calculating a many-body problem to calculate forces acting between particles in a system.
2. Description of the Related Art
For solving many-body problems in various fields including molecular dynamics, it is necessary to calculate forces acting between many particles in a system in order to explain properties of the system and to predict changes of the system. However, calculating forces that act between all the particles requires an enormous computational effort. Therefore, a method has been implemented to reduce the amount of calculation according to which the cut-off distance is determined, depending on the level of calculation accuracy that is required, and only the forces that act between a particular particle and other particles that are present within the cut-off distance, are calculated.
However, the conventional process needs to determine the distances between the particular particle and to all the other particles in the system and compare the distances within the cut-off distance in order to check if each of the particles is present in the cut-off distance or not. Generally, a system containing N particles requires more calculations since N is greater because the amount of necessary calculations increases in proportion to N2. Heretofore, a dedicated hardware-implemented calculating apparatus has been employed to calculate short-range forces such as Van der Waals forces between particles.
For efficiently calculating short-range forces between particles, it is desirable to efficiently select particles that are present near a particular particle so as to reduce the amount of calculations of distances between the particles. For example, JP-A No. 2001-236342 discloses a process of dividing a space (system), to be calculated, containing a number of particles into a plurality of subcells each in a rectangular parallelepiped shape, and efficiently selecting particles to be calculated for short-range forces based on the proximity relationship between the subcells.
A many-body problem calculating apparatus disclosed in JP-A No. 2001-236342 comprises a particle coordinate memory for storing the coordinates of particles and an index memory for storing the addresses of the particle coordinate memory which has stored the coordinates of the particles. The addresses of the particle coordinate memory which correspond to the respective particles are stored in the index memory in relation to the subcells that are assigned based on the coordinates of the particles. When the short-range forces between the particles are to be calculated, a subcell in which a particular particle is present and a subcell that is present near that subcell are designated based on the proximity relationship between the subcells, the particles belonging to the designated subcells are selected for calculating short-range forces therebetween, and the coordinates of the selected particles are acquired from the particle coordinate memory.
Consequently, it is necessary for information about the coordinates of all the particles contained in the system and information about the subcells to which the particles belong to be stored in memory. Since there are as many items of information about the subcells as the number of the particles, the data stored in memory are enormous. The many-body problem calculating apparatus needs to have a memory having a huge storage capacity. Therefore, the many-body problem calculating apparatus and an address generator, which the many-body problem calculating apparatus has, for selecting particles to be calculated and for particles present therearound, are highly costly to manufacture.